package com.xmtlxx.system.domain.vo;

import com.xmtlxx.common.annotation.ExcelDictFormat;
import com.xmtlxx.common.convert.ExcelDictConvert;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;


/**
 * 业务模型视图对象 sys_model
 *
 * @author xmtlxx
 * @date 2022-04-24
 */
@Data
@ApiModel("业务模型视图对象")
@ExcelIgnoreUnannotated
public class SysModelVo {

    private static final long serialVersionUID = 1L;

    /**
     * 模型id
     */
    @ExcelProperty(value = "模型id")
    @ApiModelProperty("模型id")
    private String modelid;

    /**
     * 编号
     */
    @ExcelProperty(value = "编号")
    @ApiModelProperty("编号")
    private String modelno;

    /**
     * 业务类型：0-上报；1-事件；2-评估；
     */
    @ExcelProperty(value = "业务类型：0-上报；1-事件；2-评估；", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "obj_type")
    @ApiModelProperty("业务类型：0-上报；1-事件；2-评估；")
    private String busstype;

    /**
     * 名称
     */
    @ExcelProperty(value = "名称")
    @ApiModelProperty("名称")
    private String name;

    /**
     * 流程id
     */
    @ExcelProperty(value = "流程id")
    @ApiModelProperty("流程id")
    private String wid;

    /**
     * 备注
     */
    @ExcelProperty(value = "备注")
    @ApiModelProperty("备注")
    private String remark;

    /**
     * 状态
     */
    @ExcelProperty(value = "状态", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "glo_status")
    @ApiModelProperty("状态")
    private String status;

    /**
     * 适用部门id
     */
    @ExcelProperty(value = "适用部门id")
    @ApiModelProperty("适用部门id")
    private String deptids;

    /**
     * 租户id
     */
    @ExcelProperty(value = "租户id")
    @ApiModelProperty("租户id")
    private Long tenantId;

    /**
     * 流程名称
     */
    @ExcelProperty(value = "流程名称")
    @ApiModelProperty("流程名称")
    private String workflow;

    private List<SysFormVo> items;

    private String delFlag;


}
